package com.sk.weichat.bean;

import android.os.Parcel;
import android.os.Parcelable;

import com.alibaba.fastjson.annotation.JSONField;

public class AttentionUser implements Parcelable {
    private int blacklist; // 0 表示不是黑名单，1表示是在黑名单
    private int isBeenBlack;// 1表示对方将我拉入黑名单
    private int status;// -1黑名单 0陌生人 1关注 2好友 14被关注
    private String userId;// 发起关注的人
    private String toUserId;// 被关注的人
    private int toUserType;// 2 公众号
    @JSONField(name = "toNickname")
    private String toNickName;
    private String nickname;
    private String remarkName;
    private String describe;
    private int replyStatus;//是否已回复:0，未回复；1、已回复
    private int offlineNoPushMsg;// 消息免打扰
    private double chatRecordTimeOut;//0 || -1 消息永久保存 单位：day
    private int createTime;
    private int modifyTime;// 修改时间
    private int groupId;// 分组Id
    private String groupName;// 分组名称
    private int companyId;
    private Friend friends;

    public AttentionUser() {
    }

    protected AttentionUser(Parcel in) {
        blacklist = in.readInt();
        isBeenBlack = in.readInt();
        status = in.readInt();
        userId = in.readString();
        toUserId = in.readString();
        toUserType = in.readInt();
        toNickName = in.readString();
        nickname = in.readString();
        remarkName = in.readString();
        describe = in.readString();
        replyStatus = in.readInt();
        offlineNoPushMsg = in.readInt();
        chatRecordTimeOut = in.readDouble();
        createTime = in.readInt();
        modifyTime = in.readInt();
        groupId = in.readInt();
        groupName = in.readString();
        companyId = in.readInt();
    }

    @Override
    public void writeToParcel(Parcel dest, int flags) {
        dest.writeInt(blacklist);
        dest.writeInt(isBeenBlack);
        dest.writeInt(status);
        dest.writeString(userId);
        dest.writeString(toUserId);
        dest.writeInt(toUserType);
        dest.writeString(toNickName);
        dest.writeString(nickname);
        dest.writeString(remarkName);
        dest.writeString(describe);
        dest.writeInt(replyStatus);
        dest.writeInt(offlineNoPushMsg);
        dest.writeDouble(chatRecordTimeOut);
        dest.writeInt(createTime);
        dest.writeInt(modifyTime);
        dest.writeInt(groupId);
        dest.writeString(groupName);
        dest.writeInt(companyId);
    }

    @Override
    public int describeContents() {
        return 0;
    }

    public static final Creator<AttentionUser> CREATOR = new Creator<AttentionUser>() {
        @Override
        public AttentionUser createFromParcel(Parcel in) {
            return new AttentionUser(in);
        }

        @Override
        public AttentionUser[] newArray(int size) {
            return new AttentionUser[size];
        }
    };

    public int getReplyStatus() {
        return replyStatus;
    }

    public void setReplyStatus(int replyStatus) {
        this.replyStatus = replyStatus;
    }

    public int getBlacklist() {
        return blacklist;
    }

    public void setBlacklist(int blacklist) {
        this.blacklist = blacklist;
    }

    public int getIsBeenBlack() {
        return isBeenBlack;
    }

    public void setIsBeenBlack(int isBeenBlack) {
        this.isBeenBlack = isBeenBlack;
    }

    public int getStatus() {
        return status;
    }

    public void setStatus(int status) {
        this.status = status;
    }

    public String getUserId() {
        return userId;
    }

    public void setUserId(String userId) {
        this.userId = userId;
    }

    public String getToUserId() {
        return toUserId;
    }

    public void setToUserId(String toUserId) {
        this.toUserId = toUserId;
    }

    public int getToUserType() {
        return toUserType;
    }

    public void setToUserType(int toUserType) {
        this.toUserType = toUserType;
    }

    public String getToNickName() {
        return toNickName;
    }

    public String getNickname() {
        return nickname;
    }

    public void setNickname(String nickname) {
        this.nickname = nickname;
    }

    public void setToNickName(String toNickName) {
        this.toNickName = toNickName;
    }

    public String getRemarkName() {
        return remarkName;
    }

    public void setRemarkName(String remarkName) {
        this.remarkName = remarkName;
    }

    public int getOfflineNoPushMsg() {
        return offlineNoPushMsg;
    }

    public void setOfflineNoPushMsg(int offlineNoPushMsg) {
        this.offlineNoPushMsg = offlineNoPushMsg;
    }

    public double getChatRecordTimeOut() {
        return chatRecordTimeOut;
    }

    public void setChatRecordTimeOut(double chatRecordTimeOut) {
        this.chatRecordTimeOut = chatRecordTimeOut;
    }

    public int getCreateTime() {
        return createTime;
    }

    public void setCreateTime(int createTime) {
        this.createTime = createTime;
    }

    public int getModifyTime() {
        return modifyTime;
    }

    public void setModifyTime(int modifyTime) {
        this.modifyTime = modifyTime;
    }

    public int getGroupId() {
        return groupId;
    }

    public void setGroupId(int groupId) {
        this.groupId = groupId;
    }

    public String getGroupName() {
        return groupName;
    }

    public void setGroupName(String groupName) {
        this.groupName = groupName;
    }

    public int getCompanyId() {
        return companyId;
    }

    public void setCompanyId(int companyId) {
        this.companyId = companyId;
    }

    public String getDescribe() {
        return describe;
    }

    public void setDescribe(String describe) {
        this.describe = describe;
    }

    public Friend getFriends() {
        return friends;
    }

    public void setFriends(Friend friends) {
        this.friends = friends;
    }

    @Override
    public String toString() {
        return "AttentionUser{" +
                "blacklist=" + blacklist +
                ", isBeenBlack=" + isBeenBlack +
                ", status=" + status +
                ", userId='" + userId + '\'' +
                ", toUserId='" + toUserId + '\'' +
                ", toUserType=" + toUserType +
                ", toNickName='" + toNickName + '\'' +
                ", nickname='" + nickname + '\'' +
                ", remarkName='" + remarkName + '\'' +
                ", describe='" + describe + '\'' +
                ", replyStatus=" + replyStatus +
                ", offlineNoPushMsg=" + offlineNoPushMsg +
                ", chatRecordTimeOut=" + chatRecordTimeOut +
                ", createTime=" + createTime +
                ", modifyTime=" + modifyTime +
                ", groupId=" + groupId +
                ", groupName='" + groupName + '\'' +
                ", companyId=" + companyId +
                ", friends=" + friends +
                '}';
    }
}
